The invention relates to the field of image processing, and in particular to determining motion vectors which are individually assigned to image regions of an image.
In image processing, a known approach is to assign motion vectors to individual image regions of an image which is part of a sequence of images. These motion vectors each indicate a displacement of the position of this image region relative to a position for this image region in a previous or following image of the image sequence. The thus obtained motion information is useful, for example, in generating one or more intermediate images lying chronologically between the images of the image sequence in order to correctly display the position of moving objects in the intermediate images (i.e., displaying them with correct motion). The motion information for an object moving over multiple successive images may also be employed for the compressed storage of image data for successive images.
One possible method, among many others, for generating these motion vectors is the block matching method which is described, for example, in Schröder, H.; Blume, H.: Mehrdimensionale Signalverarbeitung [“Multidimensional Signal Processing”], Volume 2, ISBN 3-519-06197-X, pages 259-266. In this method, the current image from an image sequence is subdivided into a number of blocks of equal size. For each of these blocks, a block is sought in the previous or following image, the content of which has the greatest agreement with the specific block of the current image. The displacement vector between this block from the current image and the block from the previous or following image which has the greatest number of agreements with this block of the current image then forms the motion vector for this block of the current image.
In the so-called full search algorithm, each block of the current image is compared with each block of the previous or following image in order to determine the motion vectors of the individual regions. To reduce the considerable computational effort required for the full search algorithm, additional predictive estimation techniques are known in which motion information from prior motion estimates is utilized when determining the motion vector for a specific block.
The quality of the motion estimate using the block estimation technique is significantly dependent on the block resolution (i.e., the size of the individual blocks). The quality increases as the size of the individual blocks decreases, in other words, as the resolution of the image in the individual blocks becomes better, and thus more motion vectors per image are determined. At the same time, however, the computational effort also rises with increasingly small block sizes. The susceptibility to errors also grows with increasingly small block sizes. The optimum block size is thus approximately 4×8 (lines×pixels). However, with blocks of this size clearly noticeable block structures are created during image processing. For example, when a round object moves in the image in front of a background, the block estimation can result in noticeable edges at the border of the object relative to the background.
An approach to increasing the resolution for the determination of motion vectors is known from U.S. Pat. No. 5,148,269, whereby the image is subdivided into a predetermined number of main blocks and a block estimate is first implemented in order to assign a motion vector to each of these main blocks. Each of the individual main blocks is then subdivided into a number of sub-blocks to which one motion vector each is assigned. The motion vector of the associated main block, and motion vectors of additional main blocks adjacent to the main block, are utilized to generate the motion vectors of the sub-blocks.
There is a need for a technique of determining motion vectors which offers increased resolution together with an acceptable increase in the expenditure of computing capacity, and which is in particular capable of avoiding block-like structures in an image generated using motion vectors.